#include<bits/stdc++.h>
int height(Node *n)
{
    if(n==NULL)
    return 0;
    
    return 1+max(height(n->left),height(n->right));
}
int diameter(Node* node) {
    // Your code here
    if(node==NULL)
    return 0;
    
    int lh=height(node->left);
    int rh=height(node->right);
    
    int ld=diameter(node->left);
    int rd=diameter(node->right);
    
    return max(1+lh+rh,max(ld,rd));
}